package homework;

import java.util.Arrays;

/**
 * @author DCSGO
 * @version 1.0
 * 统计字符串中的
 * 大写字母、小写字母、数字
 * 各有多少个
 */
public class Homework04 {
    public static void main(String[] args) {
        System.out.println(Arrays.toString(count("1 hi 23 CSGO 4CS2good ni6ce !!")));
        //[6, 10, 6, 8] 大写 小写 数字 其他
    }

    public static int[] count(String str) {
        if (str == null) {
            throw new RuntimeException("传入null");
        }
        int upperCnt = 0;
        int lowerCnt = 0;
        int digitCnt = 0;
        int otherCnt = 0;
        for (int i = 0; i < str.length(); i++) {
            if (Character.isUpperCase(str.charAt(i))) {
                upperCnt++;
            } else if (Character.isLowerCase(str.charAt(i))) {
                lowerCnt++;
            } else if (Character.isDigit(str.charAt(i))) {
                digitCnt++;
            } else {
                otherCnt++;
            }
        }
        return new int[]{upperCnt, lowerCnt, digitCnt, otherCnt};
    }
}
